package com.bms.entity;

import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;

import java.math.BigDecimal;
import java.time.LocalDateTime;
import java.util.Date;

/**
 * 条线预算实体
 */
@Data
public class Budget {
    // 主键ID
    private String budgetId;

    // 预算条线名称
    private String budgetName;

    // 条线ID
    private String lineId;

    // 条线名称
    private String lineName;

    // 条线总预算额度
    private BigDecimal totalBudget;

    // 已使用的预算额度
    private BigDecimal usedBudget;

    // 可用预算额度，这个字段可能不需要在Java实体类中声明，因为它是一个计算出来的值
    // 如果决定使用的话，应该注意它是一个计算属性，而不是数据库中的一个实际字段
    private BigDecimal availableBudget;

    // 所属年度
    private int year;

    // 清零/结转额度
    private BigDecimal cleanBudget;

    // 状态 1 正常 2 已清零 3 已结转
    private int status;

    // 类型 1 绩效 2 费用
    private int type;

    // 创建时间
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "Asia/Shanghai")
    private Date createdDate;

    // 更新时间
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "Asia/Shanghai")
    private Date updatedDate;
}
